1. 16.2 概率基础复习

1.1. 学习目标

  • 了解联合概率、条件概率和相关独立的概念
  • 知道贝叶斯公式
  • 知道拉普拉斯平滑系数

1.2. 1.概率定义

  • 概率定义为一件事情发生的可能性
    • 扔出一个硬币,结果头像朝上
  • P(X) : 取值在[0, 1]

1.3. 2.案例:判断女神对你的喜欢情况

在讲这两个概率之前我们通过一个例子,来计算一些结果:

image-20230711173235634

问题如下:

  1. 女神喜欢的概率?
  2. 职业是程序员并且体型匀称的概率?
  3. 在女神喜欢的条件下,职业是程序员的概率?
  4. 在女神喜欢的条件下,职业是程序员、体重超重的概率?

计算结果为:

P(喜欢) = 4/7
P(程序员, 匀称) = 1/7(联合概率)
P(程序员|喜欢) = 2/4 = 1/2(条件概率)
P(程序员, 超重|喜欢) = 1/4

思考题:在小明是产品经理并且体重超重的情况下,如何计算小明被女神喜欢的概率?

即P(喜欢|产品, 超重) = ?

此时我们需要用到朴素贝叶斯进行求解,在讲解贝叶斯公式之前,首先复习一下联合概率、条件概率和相互独立的概念。

1.4. 3.联合概率、条件概率与相互独立

  • 联合概率:包含多个条件,且所有条件同时成立的概率
    • 记作:P(A,B)
  • 条件概率:就是事件A在另外一个事件B已经发生条件下的发生概率
    • 记作:P(A|B)
  • 相互独立:如果P(A, B) = P(A)P(B),则称事件A与事件B相互独立。

1.5. 4.贝叶斯公式

1.5.1. 4.1 公式介绍

image-20230711173247040

1.5.2. 4.2 案例计算

那么思考题就可以套用贝叶斯公式这样来解决:

P(喜欢|产品, 超重) = P(产品, 超重|喜欢)P(喜欢)/P(产品, 超重)

上式中,

  • P(产品, 超重|喜欢)和P(产品, 超重)的结果均为0,导致无法计算结果。这是因为我们的样本量太少了,不具有代表性。
  • 本来现实生活中,肯定是存在职业是产品经理并且体重超重的人的,P(产品, 超重)不可能为0;
  • 而且事件“职业是产品经理”和事件“体重超重”通常被认为是相互独立的事件,但是,根据我们有限的7个样本计算“P(产品, 超重) = P(产品)P(超重)”不成立。

而朴素贝叶斯可以帮助我们解决这个问题。

  • 朴素贝叶斯,简单理解,就是假定了特征与特征之间相互独立的贝叶斯公式
  • 也就是说,朴素贝叶斯,之所以朴素,就在于假定了特征与特征相互独立。

所以,思考题如果按照朴素贝叶斯的思路来解决,就可以是

P(产品, 超重) = P(产品) * P(超重) = 2/7 * 3/7 = 6/49
p(产品, 超重|喜欢) = P(产品|喜欢) * P(超重|喜欢) = 1/2 * 1/4 = 1/8
P(喜欢|产品, 超重) = P(产品, 超重|喜欢)P(喜欢)/P(产品, 超重) = 1/8 * 4/7 / 6/49 = 7/12

那么这个公式如果应用在文章分类的场景当中,我们可以这样看:

image-20230711173258847

公式分为三个部分:

  • P(C):每个文档类别的概率(某文档类别数/总文档数量)
  • P(W│C):给定类别下特征(被预测文档中出现的词)的概率
    • 计算方法:P(F1│C)=Ni/N (训练文档中去计算)
      • Ni为该F1词在C类别所有文档中出现的次数
      • N为所属类别C下的文档所有词出现的次数和
  • P(F1,F2,…) 预测文档中每个词的概率

如果计算两个类别概率比较:

所以我们只要比较前面的大小就可以,得出谁的概率大

1.5.3. 4.3 文章分类计算

需求:通过前四个训练样本(文章),判断第五篇文章,是否属于China类

image-20230711173306349

  • 计算结果
P(C|Chinese, Chinese, Chinese, Tokyo, Japan) -->
P(Chinese, Chinese, Chinese, Tokyo, Japan|C) * P(C) / P(Chinese, Chinese, Chinese, Tokyo, Japan) 
=
P(Chinese|C)^3 * P(Tokyo|C) * P(Japan|C) * P(C) / [P(Chinese)^3 * P(Tokyo) * P(Japan)]

# 这个文章是需要计算是不是China类,是或者不是最后的分母值都相同:

# 首先计算是China类的概率: 
P(Chinese|C) = 5/8
P(Tokyo|C) = 0/8
P(Japan|C) = 0/8

# 接着计算不是China类的概率:
P(Chinese|C`) = 1/3
P(Tokyo|C`) = 1/3
P(Japan|C`) = 1/3

  • 问题:从上面的例子我们得到P(Tokyo|C)和P(Japan|C)都为0,这是不合理的,如果词频列表里面有很多出现次数都为0,很可能计算结果都为0.

  • 解决方法: P(F1C)=Ni+αN+αm P(F1|C)=\frac{Ni+\alpha}{N+\alpha*m}
  • α为指定的系数,一般为1;

    m为训练文档中统计出的特征词个数

# 这个文章是需要计算是不是China类:

首先计算是China类的概率:  0.0003
    P(Chinese|C) = 5/8 --> 6/14
    P(Tokyo|C) = 0/8 --> 1/14
    P(Japan|C) = 0/8 --> 1/14

接着计算不是China类的概率: 0.0001
    P(Chinese|C`) = 1/3 -->(经过拉普拉斯平滑系数处理) 2/9
    P(Tokyo|C`) = 1/3 --> 2/9
    P(Japan|C`) = 1/3 --> 2/9

1.6. 5 小结

  • 概率【了解】
    • 一件事情发生的可能性
  • 联合概率【知道】
    • 包含多个条件,且所有条件同时成立的概率
  • 条件概率【知道】
    • 事件A在另外一个事件B已经发生条件下的发生概率
  • 贝叶斯公式【掌握】
    • image-20230711173407262
Copyright © MISIN 2022 | 豫ICP备2023040351号-1 all right reserved,powered by Gitbook该文件修订时间: 2024-01-12 07:58:59

results matching ""

    No results matching ""